﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using RentAWorker.Business.DTO;
using System.ServiceModel;

namespace RentAWorker.Business.Interfaces
{
    /// <summary>
    /// Allows requesting rental services by customers.
    /// </summary>
    /// <remarks>Required Security Roles: FrontOffice, AccountManager</remarks>
    [ServiceContract]
    public interface IRentRequestService
    {
        [OperationContract]
        SearchResourceResponse SearchAvailableResources(SearchResourceRequest request);
        [OperationContract]
        RentalServiceResponse RequestRentalService(RentalServiceRequest request);
        [OperationContract]
        RentalServiceResponse GetRentalServiceForCustomer(RentalServiceForCustomerRequest request);
        [OperationContract]
        RentalServiceResponse GetRentalServicesForCustomer(RentalServicesForCustomerRequest request);
        [OperationContract]
        RentalServiceResponse ChangeRentalServiceForCustomer(RentalServiceChangeRequest request);
    }
}
